package com.ewanghuiju.app.model.http.response;

/**
 * @author sj  qq:751943509
 * @class describe
 * @time 2020/2/11
 */
public class MyHttpResponse<T> {

    private int code;
    private String msg;
    private T data;

    public int getCode() {
        return code;
    }

    public void setCode(int code) {
        this.code = code;
    }


    public void setData(T data) {
        this.data = data;
    }

    public T getData() {
        return data;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public Optional<T> transform() {
        return new Optional<>(data);
    }

//    // 获取不能为null的返回结果，如果为null，直接抛异常，经过二次封装之后，这个异常最终可以在走向RxJava的onError()
//    public T get() {
//        if (data == null) {
//            throw new NoSuchElementException("No value present");
//        }
//        return data;
//    }
//
//    // 获取可以为null的返回结果
//    public T getIncludeNull() {
//        return data;
//    }
}

